#include "serverClientHandler.h"
#include "serverServer.h"

ClientHandler::ClientHandler(Server* servidor, int cliente) {
	this->servidor = servidor;
	this->fdCliente = cliente;
}

ClientHandler::~ClientHandler() {
	std::cout <<"entro al destc"  << std::endl;
	stop();
	shutdown(fdCliente, SHUT_RDWR);
	close(fdCliente);
}

void ClientHandler::setFdCliente(int fdCliente) {
    this->fdCliente = fdCliente;
}

int ClientHandler::getFdCliente() const {
    return fdCliente;
}

void ClientHandler::ejecutar() {
	ModeloRespuesta resultado;

	while(estaCorriendo()) {
		while (estaActivo()) {
		resultado = *servidor->obtenerPedido(this);
		servidor->responderPedido(this, resultado);
		}
	}

	shutdown(fdCliente, SHUT_RDWR);
	close(fdCliente);
}

